package com.velpro.x1.user.config;

import com.baomidou.mybatisplus.core.incrementer.IKeyGenerator;
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
import com.baomidou.mybatisplus.extension.incrementer.OracleKeyGenerator;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class IdGeneratorConfig {

    /**
     * 主键生成策略必须使用 INPUT
     * @return
     */
   /* @Bean
    public IKeyGenerator keyGenerator() {
        *//**
         * mybatis-plus提供的默认Ids生成器
         * DB2KeyGenerator
         * H2KeyGenerator
         * KingbaseKeyGenerator
         * OracleKeyGenerator
         * PostgreKeyGenerator
         *//*
        return new OracleKeyGenerator();
    }*/

    /**
     * 自定义ID生成器
     * 主键生成策略ASSIGN_ID，自定义实现接口nextId方法
     * 主键生成策略ASSIGN_UUID， 自定义实现接口nextUUID
     * @return
     */
    @Bean
    public IdentifierGenerator idGenerator() {
        return new CustomIdGenerator();
    }
}
